<?php

use Bitrix\Main\Loader;

$arClasses = array(
	"iblock" => "install/index.php",
	"CIBlockPropertyResult" => "classes/general/iblockpropresult.php",
	"CIBlockResult" => "classes/general/iblockresult.php",
	"_CIBElement" => "classes/general/iblock_element.php",
	"CIBlockType" => "classes/general/iblocktype.php",
	"CAllIBlock" => "classes/general/iblock.php",
	"CIBlock" => "classes/mysql/iblock.php",
	"CAllIBlockSection" => "classes/general/iblocksection.php",
	"CIBlockSection" => "classes/mysql/iblocksection.php",
	"CAllIBlockProperty" => "classes/general/iblockproperty.php",
	"CIBlockPropertyEnum" => "classes/general/iblockpropertyenum.php",
	"CIBlockProperty" => "classes/mysql/iblockproperty.php",
	"CAllIBlockElement" => "classes/general/iblockelement.php",
	"CIBlockElement" => "classes/mysql/iblockelement.php",
	"CAllIBlockRSS" => "classes/general/iblockrss.php",
	"CIBlockRSS" => "classes/mysql/iblockrss.php",
	"CIBlockPropertyDateTime" => "classes/general/prop_datetime.php",
	"CIBlockPropertyDate" => "classes/general/prop_date.php",
	"CIBlockPropertyXmlID" => "classes/general/prop_xmlid.php",
	"CIBlockPropertyFileMan" => "classes/general/prop_fileman.php",
	"CIBlockPropertyHTML" => "classes/general/prop_html.php",
	"CIBlockPropertyElementList" => "classes/general/prop_element_list.php",
	"CCMLResult" => "classes/general/cmlresult.php",
	"CIBlockXMLFile" => "classes/mysql/cml2.php",
	"CIBlockCMLImport" => "classes/general/cml2.php",
	"CIBlockCMLExport" => "classes/general/cml2.php",
	"CIBlockFindTools" => "classes/general/comp_findtools.php",
	"CIBlockPriceTools" => "classes/general/comp_pricetools.php",
	"CIBlockParameters" => "classes/general/comp_parameters.php",
	"CIBlockFormatProperties" => "classes/general/comp_formatprops.php",
	"CIBlockSequence" => "classes/mysql/iblocksequence.php",
	"CIBlockPropertySequence" => "classes/general/prop_seq.php",
	"CIBlockPropertyElementAutoComplete" => "classes/general/prop_element_auto.php",
	"CIBlockPropertySKU" => "classes/general/prop_element_sku.php",
	"CIBlockPropertySectionAutoComplete" => "classes/general/prop_section_auto.php",
	"CAllIBlockOffersTmp" => "classes/general/iblockoffers.php",
	"CIBlockOffersTmp" => "classes/mysql/iblockoffers.php",
	"CEventIblock" => "classes/general/iblock_event_list.php",
	"CRatingsComponentsIBlock" => "classes/general/ratings_components.php",
	"CIBlockRights" => "classes/general/iblock_rights.php",
	"CIBlockSectionRights" => "classes/general/iblock_rights.php",
	"CIBlockElementRights" => "classes/general/iblock_rights.php",
	"CIBlockRightsStorage" => "classes/general/iblock_rights.php",
	"CIBlockPropertyTools" => "classes/general/iblockproptools.php",
	"CIBlockSectionPropertyLink" => "classes/general/section_property.php",
	"CIBlockXmlImport" => "classes/general/iblockxmlimport.php",
	'\Bitrix\Iblock\IblockFieldTable' => "lib/iblockfield.php",
	'\Bitrix\Iblock\IblockGroupTable' => "lib/iblockgroup.php",
	'\Bitrix\Iblock\IblockMessageTable' => "lib/iblockmessage.php",
	'\Bitrix\Iblock\IblockRssTable' => "lib/iblockrss.php",
	'\Bitrix\Iblock\IblockSiteTable' => "lib/iblocksite.php",
	'\Bitrix\Iblock\InheritedPropertyTable' => "lib/inheritedproperty.php",
	'\Bitrix\Iblock\PropertyEnumerationTable' => "lib/propertyenumeration.php",
	'\Bitrix\Iblock\PropertyFeatureTable' => 'lib/propertyfeature.php',
	'\Bitrix\Iblock\SequenceTable' => "lib/sequence.php",
	'\Bitrix\Iblock\SiteTable' => "lib/site.php",
	'\Bitrix\Iblock\TypeTable' => "lib/type.php",
	'\Bitrix\Iblock\TypeLanguageTable' => "lib/typelanguage.php",
	'\Bitrix\Iblock\BizprocType\UserTypeProperty' => "lib/bizproctype/usertypeproperty.php",
	'\Bitrix\Iblock\BizprocType\ECrm' => "lib/bizproctype/ecrm.php",
	'\Bitrix\Iblock\BizprocType\Money' => "lib/bizproctype/money.php",
	'\Bitrix\Iblock\BizprocType\UserTypePropertyDiskFile' => "lib/bizproctype/usertypepropertydiskfile.php",
	'\Bitrix\Iblock\BizprocType\UserTypePropertyElist' => "lib/bizproctype/usertypepropertyelist.php",
	'\Bitrix\Iblock\BizprocType\UserTypePropertyEmployee' => "lib/bizproctype/usertypepropertyemployee.php",
	'\Bitrix\Iblock\BizprocType\UserTypePropertyHtml' => "lib/bizproctype/usertypepropertyhtml.php",
	'\Bitrix\Iblock\Component\Base' => "lib/component/base.php",
	'\Bitrix\Iblock\Component\Element' => "lib/component/element.php",
	'\Bitrix\Iblock\Component\ElementList' => "lib/component/elementlist.php",
	'\Bitrix\Iblock\Component\Filters' => "lib/component/filters.php",
	'\Bitrix\Iblock\Component\Selector\Element' => "lib/component/selector/element.php",
	'\Bitrix\Iblock\Component\Selector\Entity' => "lib/component/selector/entity.php",
	'\Bitrix\Iblock\Component\Tools' => "lib/component/tools.php",
	'\Bitrix\Iblock\Grid\Panel\GroupAction' => "lib/grid/panel/groupaction.php",
	'\Bitrix\Iblock\Grid\ActionType' => "lib/grid/actiontype.php",
	'\Bitrix\Iblock\Helpers\Admin\Property' => "lib/helpers/admin/property.php",
	'\Bitrix\Iblock\Helpers\Filter\Property' => "lib/helpers/filter/property.php",
	'\Bitrix\Iblock\Helpers\Filter\PropertyManager' => "lib/helpers/filter/propertymanager.php",
	'\Bitrix\Iblock\InheritedProperty\BaseTemplate' => "lib/inheritedproperty/basetemplate.php",
	'\Bitrix\Iblock\InheritedProperty\BaseValues' => "lib/inheritedproperty/basevalues.php",
	'\Bitrix\Iblock\InheritedProperty\ElementTemplates' => "lib/inheritedproperty/elementtemplates.php",
	'\Bitrix\Iblock\InheritedProperty\ElementValues' => "lib/inheritedproperty/elementvalues.php",
	'\Bitrix\Iblock\InheritedProperty\IblockTemplates' => "lib/inheritedproperty/iblocktemplates.php",
	'\Bitrix\Iblock\InheritedProperty\IblockValues' => "lib/inheritedproperty/iblockvalues.php",
	'\Bitrix\Iblock\InheritedProperty\SectionTemplates' => "lib/inheritedproperty/sectiontemplates.php",
	'\Bitrix\Iblock\InheritedProperty\SectionValues' => "lib/inheritedproperty/sectionvalues.php",
	'\Bitrix\Iblock\InheritedProperty\ValuesQueue' => "lib/inheritedproperty/valuesqueue.php",
	'\Bitrix\Iblock\LandingSource\DataLoader' => "lib/landingsource/dataloader.php",
	'\Bitrix\Iblock\LandingSource\Element' => "lib/landingsource/element.php",
	'\Bitrix\Iblock\Model\PropertyFeature' => "lib/model/propertyfeature.php",
	'\Bitrix\Iblock\Model\Section' => "lib/model/section.php",
	'\Bitrix\Iblock\PropertyIndex\Dictionary' => "lib/propertyindex/dictionary.php",
	'\Bitrix\Iblock\PropertyIndex\Element' => "lib/propertyindex/element.php",
	'\Bitrix\Iblock\PropertyIndex\Facet' => "lib/propertyindex/facet.php",
	'\Bitrix\Iblock\PropertyIndex\Indexer' => "lib/propertyindex/indexer.php",
	'\Bitrix\Iblock\PropertyIndex\Manager' => "lib/propertyindex/manager.php",
	'\Bitrix\Iblock\PropertyIndex\QueryBuilder' => "lib/propertyindex/querybuilder.php",
	'\Bitrix\Iblock\PropertyIndex\Storage' => "lib/propertyindex/storage.php",
	'\Bitrix\Iblock\Template\Engine' => "lib/template/engine.php",
	'\Bitrix\Iblock\Template\NodeRoot' => "lib/template/engine.php",
	'\Bitrix\Iblock\Template\NodeText' => "lib/template/engine.php",
	'\Bitrix\Iblock\Template\NodeEntityField' => "lib/template/engine.php",
	'\Bitrix\Iblock\Template\NodeFunction' => "lib/template/engine.php",
	'\Bitrix\Iblock\Template\Helper' => "lib/template/helper.php",
	'\Bitrix\Iblock\Template\Entity\Base' => "lib/template/entity/base.php",
	'\Bitrix\Iblock\Template\Entity\LazyValueLoader' => "lib/template/entity/base.php",
	'\Bitrix\Iblock\Template\Entity\CatalogStore' => "lib/template/entity/catalogstore.php",
	'\Bitrix\Iblock\Template\Entity\Element' => "lib/template/entity/element.php",
	'\Bitrix\Iblock\Template\Entity\ElementCatalog' => "lib/template/entity/elementcatalog.php",
	'\Bitrix\Iblock\Template\Entity\ElementCatalogMeasure' => "lib/template/entity/elementcatalog.php",
	'\Bitrix\Iblock\Template\Entity\ElementCatalogStoreList' => "lib/template/entity/elementcatalog.php",
	'\Bitrix\Iblock\Template\Entity\ElementPrice' => "lib/template/entity/elementprice.php",
	'\Bitrix\Iblock\Template\Entity\ElementProperty' => "lib/template/entity/elementproperty.php",
	'\Bitrix\Iblock\Template\Entity\ElementPropertyUserField' => "lib/template/entity/elementproperty.php",
	'\Bitrix\Iblock\Template\Entity\ElementPropertyEnum' => "lib/template/entity/elementproperty.php",
	'\Bitrix\Iblock\Template\Entity\ElementPropertyElement' => "lib/template/entity/elementproperty.php",
	'\Bitrix\Iblock\Template\Entity\ElementPropertySection' => "lib/template/entity/elementproperty.php",
	'\Bitrix\Iblock\Template\Entity\ElementSku' => "lib/template/entity/elementsku.php",
	'\Bitrix\Iblock\Template\Entity\ElementSkuPrice' => "lib/template/entity/elementskuprice.php",
	'\Bitrix\Iblock\Template\Entity\ElementSkuProperty' => "lib/template/entity/elementskuproperty.php",
	'\Bitrix\Iblock\Template\Entity\Iblock' => "lib/template/entity/iblock.php",
	'\Bitrix\Iblock\Template\Entity\Section' => "lib/template/entity/section.php",
	'\Bitrix\Iblock\Template\Entity\SectionPath' => "lib/template/entity/sectionpath.php",
	'\Bitrix\Iblock\Template\Entity\SectionProperty' => "lib/template/entity/sectionproperty.php",
	'\Bitrix\Iblock\Template\Functions\Fabric' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionBase' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionUpper' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionLower' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionTranslit' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionConcat' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionLimit' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionContrast' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionMin' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionMax' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Template\Functions\FunctionDistinct' => "lib/template/functions/fabric.php",
	'\Bitrix\Iblock\Update\AdminFilterOption' => 'lib/update/adminfilteroption.php',
	'\Bitrix\Iblock\Update\AdminGridOption' => 'lib/update/admingridoption.php',
	'\Bitrix\Iblock\Url\AdminPage\BaseBuilder' => 'lib/url/adminpage/basebuilder.php',
	'\Bitrix\Iblock\Url\AdminPage\BuilderManager' => 'lib/url/adminpage/buildermanager.php',
	'\Bitrix\Iblock\Url\AdminPage\IblockBuilder' => 'lib/url/adminpage/iblockbuilder.php',
	'\Bitrix\Iblock\SenderEventHandler' => "lib/senderconnector.php",
	'\Bitrix\Iblock\SenderConnectorIblock' => "lib/senderconnector.php",
);
//if (\Bitrix\Main\ModuleManager::isModuleInstalled('bizproc'))
if (Loader::includeModule('bizproc'))
	$arClasses["CIBlockDocument"] = "classes/general/iblockdocument.php";

Loader::registerAutoLoadClasses("iblock", $arClasses);

// orm autoloader
Loader::registerHandler([\Bitrix\Iblock\ORM\Loader::class, 'autoLoad']);